package com.hyt.it.ogt.pj.data.model.dto;

import java.time.LocalDateTime;
import java.util.List;

import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.hyt.common.apiInfor.DataType;
import com.hyt.it.ogt.pj.data.model.entity.pj.Student;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 需要减少的实考人数DTO
 *
 * @author huangyh
 * @since 2020-12-28
 */
@Data
@ApiModel(value = "考生增强类", description = "考生增强类")
public class StudentExtendDTO extends Student {

    /**
	 * 序列号
	 */
	private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "考点id")
    private String placeId;

    @ApiModelProperty(value = "考点名称")
    private String placeName;

    @ApiModelProperty(value = "考场id")
    private String roomId;

    @ApiModelProperty(value = "考场名称")
    private String roomName;

    @ApiModelProperty(value = "座位号")
    private String seatNo;

	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:ss:mm")
	@ApiModelProperty(value = "考试开始时间")
	private LocalDateTime examBeginDate;

	@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:ss:mm")
	@ApiModelProperty(value = "考试结束时间")
	private LocalDateTime examEndDate;

    @ApiModelProperty(value = "科目用时")
    private Long subjectUseTime;

    @ApiModelProperty(value = "试卷顺序")
    private Integer sort;

    @ApiModelProperty(value = "考生配置信息")
    private List<PjConfigCode> configs;
    
    @ApiModelProperty(value = "是否有主观题")
    private Boolean hasSubjective;

    @ApiModelProperty(value = "考务考生id", dataType = DataType.STRING)
    private String govCandidateId;

}
